from django.shortcuts import render

# Create your views here.

from rest_framework.viewsets import ReadOnlyModelViewSet
from .models import Area
from .serializers import AreaSerializer,SubsAreaSerializer
from rest_framework_extensions.cache.mixins import CacheResponseMixin
class AreaInfoView(CacheResponseMixin,ReadOnlyModelViewSet):
    """
        分析：/areas/infos/
            １．用户点击新增收货地址的时候，前端通过ＧＥＴ请求来获取数据，后端把省的信息查询出来返回给前端
            ２．用户选择省的信息后，后端需要把市区县的信息返回给后端
            ３．用户查询省的信息时，后端查询列表的方式找到所有省份信息
            ４．用户查询市区县信息时，后端使用查询详情的方式查询出所有的市区县信息
    """
    pagination_class = None

    def get_queryset(self):

        if self.action == "list":
            return Area.objects.filter(parent__isnull=True)
        else:
            # 它会自动通过id帮住查询出市区县信息
            return Area.objects.all()

    def get_serializer_class(self):

        if self.action == "list":
            return AreaSerializer
        else:
            return SubsAreaSerializer



